// 1,导入mysql包
const mysql = require('mysql')
// 导入数据库配置信息
const { mysql: dbConfig } = require('../config/index')

// 2,创建连接
const con = mysql.createConnection(dbConfig)

// 3,连接数据库
con.connect()

//提取数据库执行的语句
//提取获取所有的方法
function getAll(sql) {
  return new Promise((resolve, reject) => {
    con.query(sql, function (err, data) {
      //如果有错误,就抛出错误
      if (err) reject(err)

      //发送数据
      resolve(data)
    })
  })
}

function getById(sql) {
  return new Promise((resolve, reject) => {
    con.query(sql, function (err, data) {
      if (err) {
        throw reject(err)
      }
      resolve(data[0] ? data[0] : null)
    })
  })
}

//提取增删改的方法
function exec(sql) {
  return new Promise((resolve, reject) => {
    con.query(sql, function (err, data) {
      if (err) reject(err)
      resolve(data)
    })
  })
}

//导出方法
module.exports = {
  getAll,
  getById,
  exec,
}
